home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / mac / hypercrd / hc2_x / tcprogud.sit / picture ƒ / project.h < prev    next >
Text File  |  1991-02-16  |  1KB  |  50 lines

  1. /*
  2. *    FILE:        project.h
  3. *    AUTHOR:        R. Gonzalez
  4. *    CREATED:    October 2, 1990
  5. *
  6. *    Defines projector (for 2D transformation and display) for picture
  7. *    application.
  8. */
  9.  
  10. # ifndef    project_h
  11. # define    project_h
  12.  
  13. # include    "class.h"
  14. # include    "coord.h"
  15. # include    "screen.h"
  16. # include    "frame.h"
  17. # include    "color.h"
  18.  
  19. /******************************************************************
  20. *   projector
  21. ******************************************************************/
  22. struct    Projector:Generic_Class
  23. {
  24.     Screen            *screen_ptr;
  25.     color            background_color;
  26.     Frame            *cropping_frame;
  27.     Frame            *projection_frame;
  28.     Frame            *window_frame;
  29.     int                window_num;
  30.     
  31.     boolean            init(void);
  32.     virtual void    set_background_color(color);
  33.     virtual void    set_cropping_frame(double,double,double,double);
  34.     virtual void    set_projection_frame(double,double,double,double);
  35.     virtual void    set_screen(Screen*);
  36.     virtual void    clear(void);
  37.     virtual void    overlap(void);
  38.     virtual void    show_line(Coord2*,Coord2*,color);
  39.     boolean            destroy(void);
  40. };
  41.  
  42. /******************************************************************
  43. *   corner projector - sample of specialized projector
  44. ******************************************************************/
  45. struct    Corner_Projector:Projector
  46. {
  47.     boolean            init(void);
  48. };
  49.  
  50. # endif